{
  "bundles": [
    {
      "@type": "NXBundle",
      "artifactId": "nuxeo-drive-core",
      "artifactVersion": "7.10-HF07",
      "bundleGroup": {
        "@type": "NXBundleGroup",
        "bundleIds": [
          "easyshare",
          "org.nuxeo.diff.content",
          "org.nuxeo.diff.core",
          "org.nuxeo.diff.jsf",
          "org.nuxeo.drive.core",
          "org.nuxeo.drive.elasticsearch",
          "org.nuxeo.drive.jsf",
          "org.nuxeo.drive.operations"
        ],
        "hierarchyPath": "/grp:org.nuxeo.ecm",
        "id": "grp:org.nuxeo.ecm",
        "name": "org.nuxeo.ecm",
        "parentIds": [],
        "readmes": [],
        "version": "7.10"
      },
      "bundleId": "org.nuxeo.drive.core",
      "components": [
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl",
          "documentation": "\n    The NuxeoDriveManager provides simple API to manage the\n    list of folderish documents to be used as synchronization root with a\n    local filesystem folder of the Desktop computer of a user.\n  \n",
          "documentationHtml": "<p>\nThe NuxeoDriveManager provides simple API to manage the\nlist of folderish documents to be used as synchronization root with a\nlocal filesystem folder of the Desktop computer of a user.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl",
              "descriptors": [
                "org.nuxeo.drive.service.impl.ChangeFinderDescriptor"
              ],
              "documentation": "\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n      @since 7.3\n\n      This extension point lets you contribute the change finder used by the NuxeoDriveManager.\n\n      Example of the AuditChangeFinder:\n      <code>\n    <extension point=\"changeFinder\" target=\"org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl\">\n        <changeFinder class=\"org.nuxeo.drive.service.impl.AuditChangeFinder\"/>\n    </extension>\n</code>\n",
              "documentationHtml": "<p>\n&#64;since 7.3\n</p><p>\nThis extension point lets you contribute the change finder used by the NuxeoDriveManager.\n</p><p>\nExample of the AuditChangeFinder:\n</p><p></p><pre><code>    &lt;extension point&#61;&#34;changeFinder&#34; target&#61;&#34;org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl&#34;&gt;\n        &lt;changeFinder class&#61;&#34;org.nuxeo.drive.service.impl.AuditChangeFinder&#34;/&gt;\n    &lt;/extension&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl/ExtensionPoints/org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl--changeFinder",
              "id": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl--changeFinder",
              "label": "changeFinder (org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl)",
              "name": "changeFinder",
              "version": "7.10-HF07"
            }
          ],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.runtime.EventService--listeners",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl/Contributions/org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl--listeners",
              "id": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl--listeners",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.EventService",
                "name": "org.nuxeo.runtime.EventService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"listeners\" target=\"org.nuxeo.runtime.EventService\">\n    <listener class=\"org.nuxeo.drive.service.impl.ChangeFinderReloadListener\">\n      <topic>org.nuxeo.runtime.reload</topic>\n    </listener>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl",
          "name": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl",
          "requirements": [],
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl/Services/org.nuxeo.drive.service.NuxeoDriveManager",
              "id": "org.nuxeo.drive.service.NuxeoDriveManager",
              "overriden": false,
              "version": "7.10-HF07"
            }
          ],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl\"\n  version=\"1.0\">\n\n  <implementation class=\"org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl\" />\n\n  <service>\n    <provide interface=\"org.nuxeo.drive.service.NuxeoDriveManager\" />\n  </service>\n\n  <extension target=\"org.nuxeo.runtime.EventService\" point=\"listeners\">\n    <listener\n      class=\"org.nuxeo.drive.service.impl.ChangeFinderReloadListener\">\n      <topic>org.nuxeo.runtime.reload</topic>\n    </listener>\n  </extension>\n\n  <documentation>\n    The NuxeoDriveManager provides simple API to manage the\n    list of folderish documents to be used as synchronization root with a\n    local filesystem folder of the Desktop computer of a user.\n  </documentation>\n\n  <extension-point name=\"changeFinder\">\n\n    <documentation>\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n      @since 7.3\n\n      This extension point lets you contribute the change finder used by the NuxeoDriveManager.\n\n      Example of the AuditChangeFinder:\n      <code>\n        <extension\n          target=\"org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl\"\n          point=\"changeFinder\">\n          <changeFinder class=\"org.nuxeo.drive.service.impl.AuditChangeFinder\" />\n         </extension>\n      </code>\n\n    </documentation>\n\n    <object class=\"org.nuxeo.drive.service.impl.ChangeFinderDescriptor\" />\n\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentation": "\n      Notify the NuxeoDriveManager service to invalidate\n      it's cache when a document is deleted (physically or just the\n      trash).\n\n      @author Olivier Grisel\n    \n",
              "documentationHtml": "<p>\nNotify the NuxeoDriveManager service to invalidate\nit&#39;s cache when a document is deleted (physically or just the\ntrash).\n</p><p></p>",
              "extensionPoint": "org.nuxeo.ecm.core.event.EventServiceComponent--listener",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.listeners/Contributions/org.nuxeo.drive.listeners--listener",
              "id": "org.nuxeo.drive.listeners--listener",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.event.EventServiceComponent",
                "name": "org.nuxeo.ecm.core.event.EventServiceComponent",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"listener\" target=\"org.nuxeo.ecm.core.event.EventServiceComponent\">\n    <documentation>\n      Notify the NuxeoDriveManager service to invalidate\n      it's cache when a document is deleted (physically or just the\n      trash).\n\n      @author Olivier Grisel\n    </documentation>\n\n    <listener async=\"false\" class=\"org.nuxeo.drive.listener.NuxeoDriveCacheInvalidationListener\" name=\"nuxeoDriveCacheInvalidationListener\" postCommit=\"false\" priority=\"300\">\n      <event>lifecycle_transition_event</event>\n      <event>documentRemoved</event>\n      <event>documentSecurityUpdated</event>\n      <event>addedToCollection</event>\n      <event>removedFromCollection</event>\n    </listener>\n\n    <documentation>\n      Handle document removal or root unregistration in\n      order to be able to\n      populate the audit log and hence compute\n      consistent change\n      summaries for each user.\n\n      @author Olivier Grisel\n    </documentation>\n    <listener async=\"false\" class=\"org.nuxeo.drive.listener.NuxeoDriveFileSystemDeletionListener\" name=\"nuxeoDriveFileSystemDeletionListener\" postCommit=\"false\" priority=\"200\">\n      <event>beforeDocumentModification</event>\n      <event>aboutToMove</event>\n      <event>lifecycle_transition_event</event>\n      <event>aboutToRemove</event>\n      <event>beforeDocumentSecurityModification</event>\n      <event>aboutToUnRegisterRoot</event>\n      <event>beforeRemovedFromCollection</event>\n    </listener>\n\n    <documentation>\n      Populate the audit log with virtual events generated by the nuxeoDriveFileSystemDeletionListener.\n\n      @author Antoine Taillefer\n    </documentation>\n    <listener async=\"true\" class=\"org.nuxeo.drive.listener.NuxeoDriveVirtualEventLogger\" name=\"nuxeoDriveVirtualEventLoggerListener\" postCommit=\"true\"/>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService--event",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.listeners/Contributions/org.nuxeo.drive.listeners--event",
              "id": "org.nuxeo.drive.listeners--event",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "name": "org.nuxeo.ecm.platform.audit.service.NXAuditEventsService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"event\" target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\">\n    <event name=\"rootRegistered\"/>\n    <event name=\"rootUnregistered\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.listeners",
          "name": "org.nuxeo.drive.listeners",
          "requirements": [],
          "services": [],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.listeners\" version=\"1.0.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.event.EventServiceComponent\" point=\"listener\">\n    <documentation>\n      Notify the NuxeoDriveManager service to invalidate\n      it's cache when a document is deleted (physically or just the\n      trash).\n\n      @author Olivier Grisel\n    </documentation>\n\n    <listener name=\"nuxeoDriveCacheInvalidationListener\" async=\"false\" postCommit=\"false\"\n      class=\"org.nuxeo.drive.listener.NuxeoDriveCacheInvalidationListener\" priority=\"300\">\n      <event>lifecycle_transition_event</event>\n      <event>documentRemoved</event>\n      <event>documentSecurityUpdated</event>\n      <event>addedToCollection</event>\n      <event>removedFromCollection</event>\n    </listener>\n\n    <documentation>\n      Handle document removal or root unregistration in\n      order to be able to\n      populate the audit log and hence compute\n      consistent change\n      summaries for each user.\n\n      @author Olivier Grisel\n    </documentation>\n    <listener name=\"nuxeoDriveFileSystemDeletionListener\" async=\"false\" postCommit=\"false\"\n      class=\"org.nuxeo.drive.listener.NuxeoDriveFileSystemDeletionListener\" priority=\"200\">\n      <event>beforeDocumentModification</event>\n      <event>aboutToMove</event>\n      <event>lifecycle_transition_event</event>\n      <event>aboutToRemove</event>\n      <event>beforeDocumentSecurityModification</event>\n      <event>aboutToUnRegisterRoot</event>\n      <event>beforeRemovedFromCollection</event>\n    </listener>\n\n    <documentation>\n      Populate the audit log with virtual events generated by the nuxeoDriveFileSystemDeletionListener.\n\n      @author Antoine Taillefer\n    </documentation>\n    <listener name=\"nuxeoDriveVirtualEventLoggerListener\" async=\"true\" postCommit=\"true\"\n      class=\"org.nuxeo.drive.listener.NuxeoDriveVirtualEventLogger\" />\n\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.platform.audit.service.NXAuditEventsService\" point=\"event\">\n    <event name=\"rootRegistered\" />\n    <event name=\"rootUnregistered\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-listeners.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.drive.service.impl.FileSystemItemAdapterServiceImpl",
          "documentation": "\n    @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n    This service allows to get a FileSystemItem from a\n    DocumentModel.\n\n    FileSystemItem is an adapter that provides methods to\n    get data from the document such as the binary content for a File\n    or the children items of a Folder.\n\n    It is used by Nuxeo Drive to fetch the needed data for synchronization.\n\n    Factories can be contributed to implement a specific behavior\n    for the FileSystemItem retrieval\n    depending on the document type or facet.\n  \n",
          "documentationHtml": "<p>\nThis service allows to get a FileSystemItem from a\nDocumentModel.\n</p><p>\nFileSystemItem is an adapter that provides methods to\nget data from the document such as the binary content for a File\nor the children items of a Folder.\n</p><p>\nIt is used by Nuxeo Drive to fetch the needed data for synchronization.\n</p><p>\nFactories can be contributed to implement a specific behavior\nfor the FileSystemItem retrieval\ndepending on the document type or facet.\n</p><p></p>",
          "extensionPoints": [
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.drive.service.FileSystemItemAdapterService",
              "descriptors": [
                "org.nuxeo.drive.service.impl.TopLevelFolderItemFactoryDescriptor"
              ],
              "documentation": "\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n      This extension point lets you contribute the factory\n      for the top level FolderItem.\n\n      Example of the DefaultTopLevelFolderItemFactory:\n      <code>\n    <extension point=\"topLevelFolderItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n        <topLevelFolderItemFactory class=\"org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\"/>\n    </extension>\n</code>\n",
              "documentationHtml": "<p>\nThis extension point lets you contribute the factory\nfor the top level FolderItem.\n</p><p>\nExample of the DefaultTopLevelFolderItemFactory:\n</p><p></p><pre><code>    &lt;extension point&#61;&#34;topLevelFolderItemFactory&#34; target&#61;&#34;org.nuxeo.drive.service.FileSystemItemAdapterService&#34;&gt;\n        &lt;topLevelFolderItemFactory class&#61;&#34;org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory&#34;/&gt;\n    &lt;/extension&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemAdapterService/ExtensionPoints/org.nuxeo.drive.service.FileSystemItemAdapterService--topLevelFolderItemFactory",
              "id": "org.nuxeo.drive.service.FileSystemItemAdapterService--topLevelFolderItemFactory",
              "label": "topLevelFolderItemFactory (org.nuxeo.drive.service.FileSystemItemAdapterService)",
              "name": "topLevelFolderItemFactory",
              "version": "7.10-HF07"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.drive.service.FileSystemItemAdapterService",
              "descriptors": [
                "org.nuxeo.drive.service.impl.FileSystemItemFactoryDescriptor"
              ],
              "documentation": "\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n      This extension point lets you contribute custom\n      FileSystemItem factories according to a document\n      type or facet.\n\n      Example of the DefaultFileSystemItemFactory:\n      <code>\n    <extension point=\"fileSystemItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n        <fileSystemItemFactory\n            class=\"org.nuxeo.drive.service.impl.DefaultFileSystemItemFactory\"\n            name=\"defaultFileSystemItemFactory\" order=\"50\">\n            <parameters>\n                <parameter name=\"versioningDelay\">3600</parameter>\n                <parameter name=\"versioningOption\">MINOR</parameter>\n            </parameters>\n        </fileSystemItemFactory>\n    </extension>\n</code>\n\n\n      Example of a FileSystemItem factory for documents with the Picture facet:\n      <code>\n    <extension point=\"fileSystemItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n        <fileSystemItemFactory\n            class=\"org.nuxeo.drive.sample.PictureFileSystemItemFactory\"\n            facet=\"Picture\" name=\"picture\" order=\"100\"/>\n    </extension>\n</code>\n",
              "documentationHtml": "<p>\nThis extension point lets you contribute custom\nFileSystemItem factories according to a document\ntype or facet.\n</p><p>\nExample of the DefaultFileSystemItemFactory:\n</p><p></p><pre><code>    &lt;extension point&#61;&#34;fileSystemItemFactory&#34; target&#61;&#34;org.nuxeo.drive.service.FileSystemItemAdapterService&#34;&gt;\n        &lt;fileSystemItemFactory\n            class&#61;&#34;org.nuxeo.drive.service.impl.DefaultFileSystemItemFactory&#34;\n            name&#61;&#34;defaultFileSystemItemFactory&#34; order&#61;&#34;50&#34;&gt;\n            &lt;parameters&gt;\n                &lt;parameter name&#61;&#34;versioningDelay&#34;&gt;3600&lt;/parameter&gt;\n                &lt;parameter name&#61;&#34;versioningOption&#34;&gt;MINOR&lt;/parameter&gt;\n            &lt;/parameters&gt;\n        &lt;/fileSystemItemFactory&gt;\n    &lt;/extension&gt;\n</code></pre><p>\nExample of a FileSystemItem factory for documents with the Picture facet:\n</p><p></p><pre><code>    &lt;extension point&#61;&#34;fileSystemItemFactory&#34; target&#61;&#34;org.nuxeo.drive.service.FileSystemItemAdapterService&#34;&gt;\n        &lt;fileSystemItemFactory\n            class&#61;&#34;org.nuxeo.drive.sample.PictureFileSystemItemFactory&#34;\n            facet&#61;&#34;Picture&#34; name&#61;&#34;picture&#34; order&#61;&#34;100&#34;/&gt;\n    &lt;/extension&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemAdapterService/ExtensionPoints/org.nuxeo.drive.service.FileSystemItemAdapterService--fileSystemItemFactory",
              "id": "org.nuxeo.drive.service.FileSystemItemAdapterService--fileSystemItemFactory",
              "label": "fileSystemItemFactory (org.nuxeo.drive.service.FileSystemItemAdapterService)",
              "name": "fileSystemItemFactory",
              "version": "7.10-HF07"
            },
            {
              "@type": "NXExtensionPoint",
              "componentId": "org.nuxeo.drive.service.FileSystemItemAdapterService",
              "descriptors": [
                "org.nuxeo.drive.service.impl.ActiveFileSystemItemFactoriesDescriptor",
                "org.nuxeo.drive.service.impl.ActiveTopLevelFolderItemFactoryDescriptor"
              ],
              "documentation": "\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n      This extension point lets you contribute the active FileSystemItem factories.\n\n      Example of the default contribution:\n      <code>\n    <extension point=\"activeFileSystemItemFactories\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n        <activeTopLevelFolderItemFactory>org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\n          </activeTopLevelFolderItemFactory>\n        <activeFileSystemItemFactories>\n            <factories>\n                <factory>defaultSyncRootFolderItemFactory</factory>\n                <factory>defaultFileSystemItemFactory</factory>\n            </factories>\n        </activeFileSystemItemFactories>\n    </extension>\n</code>\n\n\n      Example of a custom contribution:\n      <code>\n    <extension point=\"activeFileSystemItemFactories\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n        <activeTopLevelFolderItemFactory>org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceTopLevelFactory\n          </activeTopLevelFolderItemFactory>\n        <activeFileSystemItemFactories merge=\"true\">\n            <factories>\n                <factory enabled=\"false\">defaultSyncRootFolderItemFactory</factory>\n                <factory>userWorkspaceSyncRootParentFactory</factory>\n                <factory>userWorkspaceSyncRootFactory</factory>\n            </factories>\n        </activeFileSystemItemFactories>\n    </extension>\n</code>\n",
              "documentationHtml": "<p>\nThis extension point lets you contribute the active FileSystemItem factories.\n</p><p>\nExample of the default contribution:\n</p><p></p><pre><code>    &lt;extension point&#61;&#34;activeFileSystemItemFactories&#34; target&#61;&#34;org.nuxeo.drive.service.FileSystemItemAdapterService&#34;&gt;\n        &lt;activeTopLevelFolderItemFactory&gt;org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\n          &lt;/activeTopLevelFolderItemFactory&gt;\n        &lt;activeFileSystemItemFactories&gt;\n            &lt;factories&gt;\n                &lt;factory&gt;defaultSyncRootFolderItemFactory&lt;/factory&gt;\n                &lt;factory&gt;defaultFileSystemItemFactory&lt;/factory&gt;\n            &lt;/factories&gt;\n        &lt;/activeFileSystemItemFactories&gt;\n    &lt;/extension&gt;\n</code></pre><p>\nExample of a custom contribution:\n</p><p></p><pre><code>    &lt;extension point&#61;&#34;activeFileSystemItemFactories&#34; target&#61;&#34;org.nuxeo.drive.service.FileSystemItemAdapterService&#34;&gt;\n        &lt;activeTopLevelFolderItemFactory&gt;org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceTopLevelFactory\n          &lt;/activeTopLevelFolderItemFactory&gt;\n        &lt;activeFileSystemItemFactories merge&#61;&#34;true&#34;&gt;\n            &lt;factories&gt;\n                &lt;factory enabled&#61;&#34;false&#34;&gt;defaultSyncRootFolderItemFactory&lt;/factory&gt;\n                &lt;factory&gt;userWorkspaceSyncRootParentFactory&lt;/factory&gt;\n                &lt;factory&gt;userWorkspaceSyncRootFactory&lt;/factory&gt;\n            &lt;/factories&gt;\n        &lt;/activeFileSystemItemFactories&gt;\n    &lt;/extension&gt;\n</code></pre><p></p>",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemAdapterService/ExtensionPoints/org.nuxeo.drive.service.FileSystemItemAdapterService--activeFileSystemItemFactories",
              "id": "org.nuxeo.drive.service.FileSystemItemAdapterService--activeFileSystemItemFactories",
              "label": "activeFileSystemItemFactories (org.nuxeo.drive.service.FileSystemItemAdapterService)",
              "name": "activeFileSystemItemFactories",
              "version": "7.10-HF07"
            }
          ],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.runtime.EventService--listeners",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemAdapterService/Contributions/org.nuxeo.drive.service.FileSystemItemAdapterService--listeners",
              "id": "org.nuxeo.drive.service.FileSystemItemAdapterService--listeners",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.runtime.EventService",
                "name": "org.nuxeo.runtime.EventService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"listeners\" target=\"org.nuxeo.runtime.EventService\">\n    <listener class=\"org.nuxeo.drive.service.impl.FileSystemItemFactoryReloadListener\">\n      <topic>org.nuxeo.runtime.reload</topic>\n    </listener>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemAdapterService",
          "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
          "requirements": [],
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.drive.service.FileSystemItemAdapterService",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemAdapterService/Services/org.nuxeo.drive.service.FileSystemItemAdapterService",
              "id": "org.nuxeo.drive.service.FileSystemItemAdapterService",
              "overriden": false,
              "version": "7.10-HF07"
            }
          ],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n  version=\"1.0\">\n\n  <documentation>\n    @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n    This service allows to get a FileSystemItem from a\n    DocumentModel.\n\n    FileSystemItem is an adapter that provides methods to\n    get data from the document such as the binary content for a File\n    or the children items of a Folder.\n\n    It is used by Nuxeo Drive to fetch the needed data for synchronization.\n\n    Factories can be contributed to implement a specific behavior\n    for the FileSystemItem retrieval\n    depending on the document type or facet.\n  </documentation>\n\n  <service>\n    <provide interface=\"org.nuxeo.drive.service.FileSystemItemAdapterService\" />\n  </service>\n\n  <implementation\n    class=\"org.nuxeo.drive.service.impl.FileSystemItemAdapterServiceImpl\" />\n\n  <extension target=\"org.nuxeo.runtime.EventService\" point=\"listeners\">\n    <listener\n      class=\"org.nuxeo.drive.service.impl.FileSystemItemFactoryReloadListener\">\n      <topic>org.nuxeo.runtime.reload</topic>\n    </listener>\n  </extension>\n\n  <extension-point name=\"fileSystemItemFactory\">\n\n    <documentation>\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n      This extension point lets you contribute custom\n      FileSystemItem factories according to a document\n      type or facet.\n\n      Example of the DefaultFileSystemItemFactory:\n      <code>\n        <extension\n          target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n          point=\"fileSystemItemFactory\">\n          <fileSystemItemFactory name=\"defaultFileSystemItemFactory\" order=\"50\"\n            class=\"org.nuxeo.drive.service.impl.DefaultFileSystemItemFactory\">\n            <parameters>\n              <parameter name=\"versioningDelay\">3600</parameter>\n              <parameter name=\"versioningOption\">MINOR</parameter>\n            </parameters>\n          </fileSystemItemFactory>\n         </extension>\n      </code>\n\n      Example of a FileSystemItem factory for documents with the Picture facet:\n      <code>\n        <extension\n          target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n          point=\"fileSystemItemFactory\">\n          <fileSystemItemFactory name=\"picture\" facet=\"Picture\" order=\"100\"\n            class=\"org.nuxeo.drive.sample.PictureFileSystemItemFactory\" />\n         </extension>\n      </code>\n\n    </documentation>\n\n    <object class=\"org.nuxeo.drive.service.impl.FileSystemItemFactoryDescriptor\" />\n\n  </extension-point>\n\n  <extension-point name=\"topLevelFolderItemFactory\">\n\n    <documentation>\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n      This extension point lets you contribute the factory\n      for the top level FolderItem.\n\n      Example of the DefaultTopLevelFolderItemFactory:\n      <code>\n        <extension\n          target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n          point=\"topLevelFolderItemFactory\">\n          <topLevelFolderItemFactory class=\"org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\" />\n         </extension>\n      </code>\n\n    </documentation>\n\n    <object class=\"org.nuxeo.drive.service.impl.TopLevelFolderItemFactoryDescriptor\" />\n\n  </extension-point>\n\n  <extension-point name=\"activeFileSystemItemFactories\">\n\n    <documentation>\n      @author Antoine Taillefer (ataillefer@nuxeo.com)\n\n      This extension point lets you contribute the active FileSystemItem factories.\n\n      Example of the default contribution:\n      <code>\n        <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n          point=\"activeFileSystemItemFactories\">\n          <activeTopLevelFolderItemFactory>org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\n          </activeTopLevelFolderItemFactory>\n          <activeFileSystemItemFactories>\n            <factories>\n              <factory>defaultSyncRootFolderItemFactory</factory>\n              <factory>defaultFileSystemItemFactory</factory>\n            </factories>\n          </activeFileSystemItemFactories>\n        </extension>\n      </code>\n\n      Example of a custom contribution:\n      <code>\n        <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n          point=\"activeFileSystemItemFactories\">\n          <activeTopLevelFolderItemFactory>org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceTopLevelFactory\n          </activeTopLevelFolderItemFactory>\n          <activeFileSystemItemFactories merge=\"true\">\n            <factories>\n              <factory enabled=\"false\">defaultSyncRootFolderItemFactory</factory>\n              <factory>userWorkspaceSyncRootParentFactory</factory>\n              <factory>userWorkspaceSyncRootFactory</factory>\n            </factories>\n          </activeFileSystemItemFactories>\n        </extension>\n      </code>\n\n    </documentation>\n\n    <object class=\"org.nuxeo.drive.service.impl.ActiveFileSystemItemFactoriesDescriptor\" />\n    <object class=\"org.nuxeo.drive.service.impl.ActiveTopLevelFolderItemFactoryDescriptor\" />\n\n  </extension-point>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-adapter-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.platform.query.api.PageProviderService--providers",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.pageproviders/Contributions/org.nuxeo.drive.pageproviders--providers",
              "id": "org.nuxeo.drive.pageproviders--providers",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.platform.query.api.PageProviderService",
                "name": "org.nuxeo.ecm.platform.query.api.PageProviderService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"providers\" target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\">\n\n    <coreQueryPageProvider name=\"FOLDER_ITEM_CHILDREN\">\n      <pattern>\n        SELECT * FROM Document WHERE ecm:parentId = ?\n        AND ecm:isCheckedInVersion = 0\n        AND ecm:currentLifeCycleState != 'deleted'\n        AND ecm:mixinType != 'HiddenInNavigation'\n      </pattern>\n      <sort ascending=\"true\" column=\"dc:created\"/>\n      <pageSize>1000</pageSize>\n      <maxPageSize>1000</maxPageSize>\n      <property name=\"maxResults\">PAGE_SIZE</property>\n    </coreQueryPageProvider>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.pageproviders",
          "name": "org.nuxeo.drive.pageproviders",
          "requirements": [],
          "services": [],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.pageproviders\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.platform.query.api.PageProviderService\"\n    point=\"providers\">\n\n    <coreQueryPageProvider name=\"FOLDER_ITEM_CHILDREN\">\n      <pattern>\n        SELECT * FROM Document WHERE ecm:parentId = ?\n        AND ecm:isCheckedInVersion = 0\n        AND ecm:currentLifeCycleState != 'deleted'\n        AND ecm:mixinType != 'HiddenInNavigation'\n      </pattern>\n      <sort column=\"dc:created\" ascending=\"true\" />\n      <pageSize>1000</pageSize>\n      <maxPageSize>1000</maxPageSize>\n      <property name=\"maxResults\">PAGE_SIZE</property>\n    </coreQueryPageProvider>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-pageproviders-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl--changeFinder",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.change.finder/Contributions/org.nuxeo.drive.change.finder--changeFinder",
              "id": "org.nuxeo.drive.change.finder--changeFinder",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl",
                "name": "org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"changeFinder\" target=\"org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl\">\n    <changeFinder class=\"org.nuxeo.drive.service.impl.AuditChangeFinder\"/>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.change.finder",
          "name": "org.nuxeo.drive.change.finder",
          "requirements": [],
          "services": [],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.change.finder\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.drive.service.impl.NuxeoDriveManagerImpl\"\n    point=\"changeFinder\">\n    <changeFinder class=\"org.nuxeo.drive.service.impl.AuditChangeFinder\" />\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-change-finder-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "componentClass": "org.nuxeo.drive.service.impl.FileSystemItemManagerImpl",
          "documentation": "\n    @author Antoine Taillefer(ataillefer@nuxeo.com)\n\n    This service provides an API to manage usual file system operations\n    on a FileSystemItem given its id.\n    It allows the following actions:\n    - check if an item exists\n    - get an item\n    - get a folder's children\n    - create a folder\n    - create a file\n    - update a file\n    - delete an item\n    - rename an item\n    - move an item\n    - copy an item\n\n    It is used by Nuxeo Drive to synchronize a client device with the server.\n  \n",
          "documentationHtml": "<p>\nThis service provides an API to manage usual file system operations\non a FileSystemItem given its id.\nIt allows the following actions:\n- check if an item exists\n- get an item\n- get a folder&#39;s children\n- create a folder\n- create a file\n- update a file\n- delete an item\n- rename an item\n- move an item\n- copy an item\n</p><p>\nIt is used by Nuxeo Drive to synchronize a client device with the server.\n</p><p></p>",
          "extensionPoints": [],
          "extensions": [],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemManager",
          "name": "org.nuxeo.drive.service.FileSystemItemManager",
          "requirements": [],
          "services": [
            {
              "@type": "NXService",
              "componentId": "org.nuxeo.drive.service.FileSystemItemManager",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.service.FileSystemItemManager/Services/org.nuxeo.drive.service.FileSystemItemManager",
              "id": "org.nuxeo.drive.service.FileSystemItemManager",
              "overriden": false,
              "version": "7.10-HF07"
            }
          ],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.service.FileSystemItemManager\"\n  version=\"1.0\">\n\n  <documentation>\n    @author Antoine Taillefer(ataillefer@nuxeo.com)\n\n    This service provides an API to manage usual file system operations\n    on a FileSystemItem given its id.\n    It allows the following actions:\n    - check if an item exists\n    - get an item\n    - get a folder's children\n    - create a folder\n    - create a file\n    - update a file\n    - delete an item\n    - rename an item\n    - move an item\n    - copy an item\n\n    It is used by Nuxeo Drive to synchronize a client device with the server.\n  </documentation>\n\n  <service>\n    <provide interface=\"org.nuxeo.drive.service.FileSystemItemManager\" />\n  </service>\n\n  <implementation\n    class=\"org.nuxeo.drive.service.impl.FileSystemItemManagerImpl\" />\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-filesystemitem-service.xml",
          "xmlPureComponent": false
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.FileSystemItemAdapterService--topLevelFolderItemFactory",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters.hierarchy.permission/Contributions/org.nuxeo.drive.adapters.hierarchy.permission--topLevelFolderItemFactory",
              "id": "org.nuxeo.drive.adapters.hierarchy.permission--topLevelFolderItemFactory",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.FileSystemItemAdapterService",
                "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"topLevelFolderItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n    <topLevelFolderItemFactory class=\"org.nuxeo.drive.hierarchy.permission.factory.PermissionTopLevelFactory\">\n      <parameters>\n        <parameter name=\"folderName\">Nuxeo Drive</parameter>\n        <parameter name=\"childrenFactories\">userSyncRootParentFactory,sharedSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </topLevelFolderItemFactory>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.FileSystemItemAdapterService--fileSystemItemFactory",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters.hierarchy.permission/Contributions/org.nuxeo.drive.adapters.hierarchy.permission--fileSystemItemFactory",
              "id": "org.nuxeo.drive.adapters.hierarchy.permission--fileSystemItemFactory",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.FileSystemItemAdapterService",
                "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"fileSystemItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n\n    <!-- User synchronization root parent factory (user workspace): order \n      before the \"permissionSyncRootFactory\" that has an order of 40 and before \n      the \"defaultFileSystemItemFactory\" that has an order of 50 -->\n    <fileSystemItemFactory class=\"org.nuxeo.drive.hierarchy.permission.factory.UserSyncRootParentFactory\" name=\"userSyncRootParentFactory\" order=\"30\">\n      <parameters>\n        <parameter name=\"folderName\">My Docs</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n    <!-- Synchronization root factory: order before the \"defaultFileSystemItemFactory\" \n      that has an order of 50 -->\n    <fileSystemItemFactory class=\"org.nuxeo.drive.hierarchy.permission.factory.PermissionSyncRootFactory\" facet=\"DriveSynchronized\" name=\"permissionSyncRootFactory\" order=\"40\">\n      <parameters>\n        <parameter name=\"requiredPermission\">ReadWrite</parameter>\n        <parameter name=\"userSyncRootParentFactory\">userSyncRootParentFactory</parameter>\n        <parameter name=\"sharedSyncRootParentFactory\">\n          sharedSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n    <!-- Shared synchronization root parent factory -->\n    <fileSystemItemFactory class=\"org.nuxeo.drive.hierarchy.permission.factory.SharedSyncRootParentFactory\" name=\"sharedSyncRootParentFactory\" order=\"100\">\n      <parameters>\n        <parameter name=\"folderName\">Other Docs</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters.hierarchy.permission",
          "name": "org.nuxeo.drive.adapters.hierarchy.permission",
          "requirements": [],
          "services": [],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.adapters.hierarchy.permission\"\n  version=\"1.0\">\n\n  <require>org.nuxeo.drive.adapters</require>\n\n  <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n    point=\"topLevelFolderItemFactory\">\n    <topLevelFolderItemFactory\n      class=\"org.nuxeo.drive.hierarchy.permission.factory.PermissionTopLevelFactory\">\n      <parameters>\n        <parameter name=\"folderName\">Nuxeo Drive</parameter>\n        <parameter name=\"childrenFactories\">userSyncRootParentFactory,sharedSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </topLevelFolderItemFactory>\n  </extension>\n\n  <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n    point=\"fileSystemItemFactory\">\n\n    <!-- User synchronization root parent factory (user workspace): order \n      before the \"permissionSyncRootFactory\" that has an order of 40 and before \n      the \"defaultFileSystemItemFactory\" that has an order of 50 -->\n    <fileSystemItemFactory name=\"userSyncRootParentFactory\"\n      order=\"30\"\n      class=\"org.nuxeo.drive.hierarchy.permission.factory.UserSyncRootParentFactory\">\n      <parameters>\n        <parameter name=\"folderName\">My Docs</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n    <!-- Synchronization root factory: order before the \"defaultFileSystemItemFactory\" \n      that has an order of 50 -->\n    <fileSystemItemFactory name=\"permissionSyncRootFactory\"\n      order=\"40\" facet=\"DriveSynchronized\"\n      class=\"org.nuxeo.drive.hierarchy.permission.factory.PermissionSyncRootFactory\">\n      <parameters>\n        <parameter name=\"requiredPermission\">ReadWrite</parameter>\n        <parameter name=\"userSyncRootParentFactory\">userSyncRootParentFactory</parameter>\n        <parameter name=\"sharedSyncRootParentFactory\">\n          sharedSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n    <!-- Shared synchronization root parent factory -->\n    <fileSystemItemFactory name=\"sharedSyncRootParentFactory\"\n      order=\"100\"\n      class=\"org.nuxeo.drive.hierarchy.permission.factory.SharedSyncRootParentFactory\">\n      <parameters>\n        <parameter name=\"folderName\">Other Docs</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-hierarchy-permission-adapter-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.FileSystemItemAdapterService--fileSystemItemFactory",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters.hierarchy.userworkspace/Contributions/org.nuxeo.drive.adapters.hierarchy.userworkspace--fileSystemItemFactory",
              "id": "org.nuxeo.drive.adapters.hierarchy.userworkspace--fileSystemItemFactory",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.FileSystemItemAdapterService",
                "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"fileSystemItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n\n    <!-- Synchronization root parent factory: order before the \"userWorkspaceSyncRootFactory\" \n      that has an order of 40 and before the \"defaultFileSystemItemFactory\" that \n      has an order of 50 -->\n    <fileSystemItemFactory class=\"org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceSyncRootParentFactory\" name=\"userWorkspaceSyncRootParentFactory\" order=\"30\">\n      <parameters>\n        <parameter name=\"folderName\">My synchronized folders</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n    <!-- Synchronization root factory: order before the \"defaultFileSystemItemFactory\" \n      that has an order of 50 -->\n    <fileSystemItemFactory class=\"org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceSyncRootFactory\" facet=\"DriveSynchronized\" name=\"userWorkspaceSyncRootFactory\" order=\"40\">\n      <parameters>\n        <parameter name=\"syncRootParentFactory\">userWorkspaceSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.FileSystemItemAdapterService--topLevelFolderItemFactory",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters.hierarchy.userworkspace/Contributions/org.nuxeo.drive.adapters.hierarchy.userworkspace--topLevelFolderItemFactory",
              "id": "org.nuxeo.drive.adapters.hierarchy.userworkspace--topLevelFolderItemFactory",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.FileSystemItemAdapterService",
                "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"topLevelFolderItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n    <topLevelFolderItemFactory class=\"org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceTopLevelFactory\">\n      <parameters>\n        <parameter name=\"folderName\">Nuxeo Drive</parameter>\n        <parameter name=\"syncRootParentFactory\">userWorkspaceSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </topLevelFolderItemFactory>\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters.hierarchy.userworkspace",
          "name": "org.nuxeo.drive.adapters.hierarchy.userworkspace",
          "requirements": [],
          "services": [],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.adapters.hierarchy.userworkspace\"\n  version=\"1.0\">\n\n  <require>org.nuxeo.drive.adapters</require>\n\n  <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n    point=\"topLevelFolderItemFactory\">\n    <topLevelFolderItemFactory\n      class=\"org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceTopLevelFactory\">\n      <parameters>\n        <parameter name=\"folderName\">Nuxeo Drive</parameter>\n        <parameter name=\"syncRootParentFactory\">userWorkspaceSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </topLevelFolderItemFactory>\n  </extension>\n\n  <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n    point=\"fileSystemItemFactory\">\n\n    <!-- Synchronization root parent factory: order before the \"userWorkspaceSyncRootFactory\" \n      that has an order of 40 and before the \"defaultFileSystemItemFactory\" that \n      has an order of 50 -->\n    <fileSystemItemFactory name=\"userWorkspaceSyncRootParentFactory\"\n      order=\"30\"\n      class=\"org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceSyncRootParentFactory\">\n      <parameters>\n        <parameter name=\"folderName\">My synchronized folders</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n    <!-- Synchronization root factory: order before the \"defaultFileSystemItemFactory\" \n      that has an order of 50 -->\n    <fileSystemItemFactory name=\"userWorkspaceSyncRootFactory\"\n      order=\"40\" facet=\"DriveSynchronized\"\n      class=\"org.nuxeo.drive.hierarchy.userworkspace.factory.UserWorkspaceSyncRootFactory\">\n      <parameters>\n        <parameter name=\"syncRootParentFactory\">userWorkspaceSyncRootParentFactory\n        </parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-hierarchy-userworkspace-adapter-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.FileSystemItemAdapterService--fileSystemItemFactory",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters/Contributions/org.nuxeo.drive.adapters--fileSystemItemFactory",
              "id": "org.nuxeo.drive.adapters--fileSystemItemFactory",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.FileSystemItemAdapterService",
                "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"fileSystemItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n\n    <fileSystemItemFactory class=\"org.nuxeo.drive.service.impl.CollectionSyncRootFolderItemFactory\" facet=\"Collection\" name=\"collectionSyncRootFolderItemFactory\" order=\"5\"/>\n    <fileSystemItemFactory class=\"org.nuxeo.drive.service.impl.DefaultSyncRootFolderItemFactory\" facet=\"DriveSynchronized\" name=\"defaultSyncRootFolderItemFactory\" order=\"10\"/>\n    <fileSystemItemFactory class=\"org.nuxeo.drive.service.impl.DefaultFileSystemItemFactory\" name=\"defaultFileSystemItemFactory\" order=\"50\">\n      <parameters>\n        <parameter name=\"versioningDelay\">3600</parameter>\n        <parameter name=\"versioningOption\">MINOR</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.api.DocumentAdapterService--adapters",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters/Contributions/org.nuxeo.drive.adapters--adapters",
              "id": "org.nuxeo.drive.adapters--adapters",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.api.DocumentAdapterService",
                "name": "org.nuxeo.ecm.core.api.DocumentAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"adapters\" target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\">\n\n    <adapter class=\"org.nuxeo.drive.adapter.FileSystemItem\" factory=\"org.nuxeo.drive.adapter.impl.FileSystemItemAdapterFactory\"/>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.FileSystemItemAdapterService--activeFileSystemItemFactories",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters/Contributions/org.nuxeo.drive.adapters--activeFileSystemItemFactories",
              "id": "org.nuxeo.drive.adapters--activeFileSystemItemFactories",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.FileSystemItemAdapterService",
                "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"activeFileSystemItemFactories\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n\n    <activeTopLevelFolderItemFactory>org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\n    </activeTopLevelFolderItemFactory>\n\n    <activeFileSystemItemFactories>\n      <factories>\n        <factory>collectionSyncRootFolderItemFactory</factory>\n        <factory>defaultSyncRootFolderItemFactory</factory>\n        <factory>defaultFileSystemItemFactory</factory>\n      </factories>\n    </activeFileSystemItemFactories>\n\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.drive.service.FileSystemItemAdapterService--topLevelFolderItemFactory",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters/Contributions/org.nuxeo.drive.adapters--topLevelFolderItemFactory",
              "id": "org.nuxeo.drive.adapters--topLevelFolderItemFactory",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.drive.service.FileSystemItemAdapterService",
                "name": "org.nuxeo.drive.service.FileSystemItemAdapterService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"topLevelFolderItemFactory\" target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\">\n\n    <topLevelFolderItemFactory class=\"org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\">\n      <parameters>\n        <parameter name=\"folderName\">Nuxeo Drive</parameter>\n      </parameters>\n    </topLevelFolderItemFactory>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.adapters",
          "name": "org.nuxeo.drive.adapters",
          "requirements": [],
          "services": [],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.adapters\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.api.DocumentAdapterService\"\n    point=\"adapters\">\n\n    <adapter class=\"org.nuxeo.drive.adapter.FileSystemItem\"\n      factory=\"org.nuxeo.drive.adapter.impl.FileSystemItemAdapterFactory\" />\n\n  </extension>\n\n  <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n    point=\"fileSystemItemFactory\">\n\n    <fileSystemItemFactory name=\"collectionSyncRootFolderItemFactory\"\n      order=\"5\" facet=\"Collection\"\n      class=\"org.nuxeo.drive.service.impl.CollectionSyncRootFolderItemFactory\" />\n    <fileSystemItemFactory name=\"defaultSyncRootFolderItemFactory\"\n      order=\"10\" facet=\"DriveSynchronized\"\n      class=\"org.nuxeo.drive.service.impl.DefaultSyncRootFolderItemFactory\" />\n    <fileSystemItemFactory name=\"defaultFileSystemItemFactory\"\n      order=\"50\" class=\"org.nuxeo.drive.service.impl.DefaultFileSystemItemFactory\">\n      <parameters>\n        <parameter name=\"versioningDelay\">3600</parameter>\n        <parameter name=\"versioningOption\">MINOR</parameter>\n      </parameters>\n    </fileSystemItemFactory>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n    point=\"topLevelFolderItemFactory\">\n\n    <topLevelFolderItemFactory\n      class=\"org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\">\n      <parameters>\n        <parameter name=\"folderName\">Nuxeo Drive</parameter>\n      </parameters>\n    </topLevelFolderItemFactory>\n\n  </extension>\n\n  <extension target=\"org.nuxeo.drive.service.FileSystemItemAdapterService\"\n    point=\"activeFileSystemItemFactories\">\n\n    <activeTopLevelFolderItemFactory>org.nuxeo.drive.service.impl.DefaultTopLevelFolderItemFactory\n    </activeTopLevelFolderItemFactory>\n\n    <activeFileSystemItemFactories>\n      <factories>\n        <factory>collectionSyncRootFolderItemFactory</factory>\n        <factory>defaultSyncRootFolderItemFactory</factory>\n        <factory>defaultFileSystemItemFactory</factory>\n      </factories>\n    </activeFileSystemItemFactories>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-adapter-contrib.xml",
          "xmlPureComponent": true
        },
        {
          "@type": "NXComponent",
          "documentationHtml": "",
          "extensionPoints": [],
          "extensions": [
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--schema",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.coreTypes/Contributions/org.nuxeo.drive.coreTypes--schema",
              "id": "org.nuxeo.drive.coreTypes--schema",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"schema\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n    <schema name=\"driveroot\" prefix=\"drv\" src=\"schema/driveroot.xsd\"/>\n  </extension>"
            },
            {
              "@type": "NXContribution",
              "documentationHtml": "",
              "extensionPoint": "org.nuxeo.ecm.core.schema.TypeService--doctype",
              "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.coreTypes/Contributions/org.nuxeo.drive.coreTypes--doctype",
              "id": "org.nuxeo.drive.coreTypes--doctype",
              "targetComponentName": {
                "rawName": "service:org.nuxeo.ecm.core.schema.TypeService",
                "name": "org.nuxeo.ecm.core.schema.TypeService",
                "type": "service"
              },
              "version": "7.10-HF07",
              "xml": "<extension point=\"doctype\" target=\"org.nuxeo.ecm.core.schema.TypeService\">\n\n    <!-- facet used to store drive metadata on folderish documents that act \n      as synchronization roots -->\n    <facet name=\"DriveSynchronized\">\n      <schema name=\"driveroot\"/>\n    </facet>\n\n  </extension>"
            }
          ],
          "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core/org.nuxeo.drive.coreTypes",
          "name": "org.nuxeo.drive.coreTypes",
          "requirements": [],
          "services": [],
          "version": "7.10-HF07",
          "xmlFileContent": "<?xml version=\"1.0\"?>\n<component name=\"org.nuxeo.drive.coreTypes\" version=\"1.0\">\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\"\n    point=\"schema\">\n    <schema name=\"driveroot\" prefix=\"drv\" src=\"schema/driveroot.xsd\" />\n  </extension>\n\n  <extension target=\"org.nuxeo.ecm.core.schema.TypeService\"\n    point=\"doctype\">\n\n    <!-- facet used to store drive metadata on folderish documents that act \n      as synchronization roots -->\n    <facet name=\"DriveSynchronized\">\n      <schema name=\"driveroot\" />\n    </facet>\n\n  </extension>\n\n</component>\n",
          "xmlFileName": "/OSGI-INF/nuxeodrive-core-types.xml",
          "xmlPureComponent": true
        }
      ],
      "fileName": "nuxeo-drive-core-7.10-HF07.jar",
      "groupId": "org.nuxeo.ecm",
      "hierarchyPath": "/grp:org.nuxeo.ecm/org.nuxeo.drive.core",
      "id": "org.nuxeo.drive.core",
      "location": "",
      "manifest": "Manifest-Version: 1.0\r\nArchiver-Version: Plexus Archiver\r\nCreated-By: Apache Maven\r\nBuilt-By: jenkins\r\nBuild-Jdk: 1.8.0_60\r\nBundle-ManifestVersion: 2\r\nBundle-Version: 5.7\r\nBundle-Vendor: Nuxeo\r\nBundle-ActivationPolicy: lazy\r\nBundle-ClassPath: .\r\nBundle-Name: org.nuxeo.drive.core\r\nNuxeo-Component: OSGI-INF/nuxeodrive-service.xml,OSGI-INF/nuxeodrive-c\r\n hange-finder-contrib.xml,OSGI-INF/nuxeodrive-core-types.xml,OSGI-INF/\r\n nuxeodrive-listeners.xml,OSGI-INF/nuxeodrive-adapter-service.xml,OSGI\r\n -INF/nuxeodrive-adapter-contrib.xml,OSGI-INF/nuxeodrive-pageproviders\r\n -contrib.xml,OSGI-INF/nuxeodrive-filesystemitem-service.xml,OSGI-INF/\r\n nuxeodrive-hierarchy-userworkspace-adapter-contrib.xml,OSGI-INF/nuxeo\r\n drive-hierarchy-permission-adapter-contrib.xml\r\nBundle-SymbolicName: org.nuxeo.drive.core;singleton:=true\r\nBundle-RequiredExecutionEnvironment: JavaSE-1.6\r\n\r\n",
      "packages": [],
      "requirements": [],
      "version": "7.10-HF07"
    }
  ],
  "creationDate": 1664792867649,
  "key": "Nuxeo Platform LTS 2015-7.10",
  "name": "Nuxeo Platform LTS 2015",
  "operations": [],
  "packages": [],
  "pluginSnapshots": {},
  "releaseDate": 1447023600000,
  "version": "7.10"
}